"""
格式化字符串的方式
    使用字符串的format()方式
    语法结构:
        模版字符串.format(逗号分隔的参数)
    格式控制:
参数下标     :        填充       对齐方式    宽度       ,          .精度                    类型
         引号符号    用于填充    <左对齐   字符串的  数字的千位  浮点数小数部分的精度    整数类型:b/c/d/o/x/X
                   单个字符串   >右对齐   输出宽度   分隔符    或字符串的最大输出长度   浮点数类型:e/E/f/%
                              ^居中对其
"""
s = "Hello world"
print("{0:*>20}".format(s))    # *********Hello world  #字符串显示宽度为20,左对齐 空白部分用*填充
print("{0:*<20}".format(s))    # Hello world*********
print("{0:*^20}".format(s))    # ****Hello world*****
  #内置函数center也可以实现相同效果
print(s.center(20, '*'))       # ****Hello world*****
print("=====================================================")

#千位分隔符(只适用于整数与浮点数)
print("{0:,}".format(10000000000000))    # 10,000,000,000,000
print("{0:,}".format(987654.65432))    # 987,654.65432

#.精度
 #浮点数的小数部分精度
print("{0:.2f}".format(3.1415626))    # 3.14
 #字符串的最大显示长度
print("{0:.7}".format("ABCDEFGHIJKLMN"))    # ABCDEFG
print("=======================================================")

#类型( b二进制  cASCLL码对应的字符  d十进制  o八进制  x十六进制小写 X十六进制大写)
 #整数
a = 122
b = 456
print("{0:b},{0:c},{0:d},{0:o},{1:x},{1:X}".format(a, b))    # 1111010,z,122,172,1c8,1C8

 #浮点数(e科学计数法  %百分比)
c = 3.1415926
print("{0:.2f},{0:.2E},{0:.2e},{0:.2%}".format(c))    # 3.14,3.14E+00,3.14e+00,314.16%